Computer-generated electronic documents have become an integral part of day-to-day life for many people. The business world has grown increasingly dependent on these documents for exchanging information. One specific type of electronic document is generated by a diagramming computer software application. Diagramming applications, such as VISIO®, by Microsoft Corporation of Redmond, Wash., can be used to generate graphical images for block diagrams, brainstorming, business processes, charts and graphs, marketing diagrams, flowcharts, maps, organizational charts, project schedules, timelines, engineering, networking, and software and web design. These applications typically generate electronic documents that include one or more drawing sheets.
A powerful aspect of a diagramming application is that the application can be used to generate a great variety of drawing images. These images can be customized to present almost any type of information. In many cases, the information is conveyed in picture form, rather than in words. Although many symbols used to convey this information have an almost universal meaning, often a depiction will have symbols with unique meanings. To communicate to a viewer the meaning of these symbols, a depiction will often have a legend that defines the meaning of the symbols. The concept of a legend is not new. As an example, maps have used legends to define map symbols for almost as long as maps have been made.
One limitation in the current state of the art in depiction legends is that these legends are static. They define symbols on a picture based on a fixed version of that picture. To capture all of the symbols on a picture, a legend must be drawn after the picture is complete. Further revisions to the picture or placing a legend on a picture before the picture is complete may necessitate the legend being revised to accurately capture all of the symbols. Also, symbols that may have a consistent meaning from one picture to the next have to be manually entered into each occurrence of a legend defining that symbol. Also, additional information about a symbol, such as the number of times that symbol appears in the depiction, must be manually determined, entered, and updated as necessary.
What is needed is a computer-implemented method and system for automatically generating a dynamic legend for an electronic document. There is a further need in the art for automatically updating a document legend in response to revisions to the document.